The present invention relates in general to a graphic and alpha-numeric display used in association with a computer system. More particularly, the invention relates to an improved method and apparatus for handling visual attributes.
In a video display system, visual attributes, such as blink, reverse video or underlining, are generally controlled by two different techniques. In one case, there is provided a visual attribute memory separate but commonly addressed with the screen memory. In another case the video display relies upon embedded attributes. The use of a separate visual attribute memory has the advantage of greater flexibility but requires substantial data alteration when visual attributes are to be modified.
One disadvantage associated with the use of embedded attributes is the loss of characters (column spaces) when embedded attributes are used in conjunction with non-displayable codes. By way of illustration, if one uses a non-displayable code, as sensed by appropriate logic, at say column 10 on the screen to change the screen's intensity level for columns 11-80 (for an 80 character line) then this makes column 10 essentially unavailable.
The advantage to embedded attributes is that a single code such as in the aforementioned column 10 position, can be used to control all subsequent characters.
Some embedded attribute schemes allow for more character positions on a line than can actually be displayed. For example, a line may allow for 96 character positions, but only display 80. In this case, 16 visual attribute changes are allowed per character line. This thus restricts the number of visual attribute changes allowed per line. The present invention allows as many attribute changes per line as there are characters per line.
Accordingly, it is an object of the present invention to provide an improved visual attribute control system that essentially simulates embedded attributes but without losing displayable character positions on the screen.
Another object of the present invention is to provide an improved visual attribute control system having a separate visual attribute memory permitting in one mode of operation assignment of specific visual attributes on a character-by-character basis, and in a second mode of operation enabling propagation of a visual attribute so as to simulate an embedded attribute system.